package com.youxin.cpcenter.service;

import java.util.List;

import com.youxin.busfoundation.bean.ResponseObject;
import com.youxin.busfoundation.bean.ent.MemberIdentityBean;
import com.youxin.busfoundation.bean.ent.RequestEntIdentifyInfo;
import com.youxin.busfoundation.bean.ent.RequestMemberIdentifyBean;
import com.youxin.busfoundation.bean.ent.RequestMemberInfo;
import com.youxin.busfoundation.bean.ent.RequestMemberInfoIdentify;
import com.youxin.busfoundation.bean.ent.RequestTrySubmitBean;
import com.youxin.cpcenter.bean.MemberQueryListBean;
import com.youxin.cpcenter.bean.member.MemberInfo;
import com.youxin.cpcenter.model.TbMemberInfo;


public interface EnterpriseService {
	/**
	 * 企业认证
	 * @param bean
	 * @return
	 */
	public ResponseObject requestIdentify(RequestEntIdentifyInfo bean);
	/**
	 * 添加成员
	 * @param bean RequestMemberInfo
	 * @return TbMemberInfo
	 */
	TbMemberInfo addMember(RequestMemberInfo bean);
	/**
	 * 成员列表展示
	 * @param bean MemberQueryListBean
	 * @return List<TbMemberInfo>
	 */
	public List<MemberInfo> listMembers(MemberQueryListBean bean);
	/**
	 * 开通企业版
	 * @param bean MemberIdentityBean
	 * @return ResponseObject
	 */
	public ResponseObject openEdition(MemberIdentityBean bean);
	/**关闭企业版
	 * 
	 * @param bean MemberIdentityBean
	 * @return ResponseObject
	 */
	ResponseObject closeEdition(MemberIdentityBean bean);
	/**
	 * 成员认证企业版
	 * @param bean MemberIdentityBean
	 * @return ResponseObject
	 */
	public ResponseObject authenticate(MemberIdentityBean bean);
	/**
	 * 解除认证企业版
	 * @param bean MemberIdentityBean
	 * @return unAuthenticate
	 */
	public ResponseObject unAuthenticate(MemberIdentityBean bean);
	/**
	 * 管理员转移
	 * @param bean MemberIdentityBean
	 * @return ResponseObject
	 */
	public ResponseObject transferManager(MemberIdentityBean bean);
	/**
	 * 企业版试用信息提交
	 * @param bean
	 * @return
	 */
	public ResponseObject tryoutSubmit(RequestTrySubmitBean bean);
	
	ResponseObject listIdentify(RequestMemberIdentifyBean bean);
	
	public ResponseObject memberInfoIdentify(RequestMemberInfoIdentify bean);
}
